package com.ylt.service;

import com.github.pagehelper.PageInfo;
import org.springframework.stereotype.Service;

import javax.print.DocFlavor;
import java.util.List;
import java.util.Map;

/**
 * @author zhouliang
 * @create 2018-12-03 18:19
 */
public interface WeChatService {
    
    /**
     * 首页轮播banner接口（参数：无）
     */
    public List<Map> getImageInfo(String shopId);
    /**
     * 首页行业新闻接口（参数：无）
     */
    public List<Map> getYlt_news();
    /**
     * 微信绑定接口（参数：微信ID）：一个药店客户ID，只能绑定一个微信。
     */
    public void binging_wx(Map wxMap);
    /**
     * 微信绑定校验接口（参数：1.用户名，2.口令或者短信验证码）：交易通过，绑定微信。
      */
    public Integer binging_wx_check(Map wxMap);

    /**
     * 订单查询接口（参数：客户ID）：返回订单数据（店铺名称，发货状态，支付状态）。
     * @param cust_id
     * @return
     */
    public PageInfo<Map> getYlt_orders_header(int pageNum, int pageSize,String cust_id,String so_zt,String pay_state);

    /**
     * 订单明细接口
     * @param b2b_order_number
     * @return
     */
    public PageInfo<Map> getYlt_orders_LINE(int pageNum, int pageSize,String b2b_order_number);

    /**
     * 商品接口（参数：无）：返回带店铺的商品数据
     * @return
     */
    public PageInfo<Map> getYlt_items(Map reqMap);

    /**
     * 客户信息接口（参数：微信ID）：获取客户ID，名称等
     * @param wx_id
     * @return
     */
    public Map getYlt_customerInfo(String wx_id);


    /**
     * 要货登记接口（参数：客户ID，商品ID，店铺ID，数量）
     * @param reqMap
     * @return
     */
    void ylt_product_registration(Map<String, Object> reqMap);

    /**
     * 我的要货接口（参数：客户ID）：返回登记过的要货数据
     * @return
     */
    public PageInfo<Map> get_ylt_product_registration(Map reqMap);
    /**
     * 取消报货。
     */
    public void ylt_cancle_registration(Map wxMap);

   public void ylt_signOrder(Map<String, Object> reqMap);
    /**
     * 终端客户获取订单头列表
     */
    public PageInfo<Map> getYlt_orders_header_fk(Map reqMap);
    /**
     * 终端客户获取发运头列表
     */
    public PageInfo<Map> getYlt_delivers_header_fk(Map reqMap);

    /**
     * 订单明细接口:
     * @return
     */
    public PageInfo<Map> getYlt_Order_Item(Map reqMap);
    /**
     * 订单明细接口:
     * @return
     */
    public PageInfo<Map> getYlt_Deliver_Item(Map reqMap);
    /**
     * 更新订单状态：取消订单，收货订单
     */
    public void update_Order_Header_ZT(Map wxMap);
    /**
    * 返回客户的商品列表信息
    * @return
    */
   public PageInfo<Map> select_ItemPrice(Map reqMap);
   /**
    * 查询指定订单号的订单头信息以及发运头信息，用于支付接口调用
    */
   public Map<String,Object> selectOrderPayInfo(Map reqMap);
   
}
